Desenvolvimento para Dispositivos Móveis
Aula 03
Prof. Dr. Raulcézar Alves
raulcezar@gmail.com

Ligação Visão e Controle

    Padrão ViewHolder:
  • mapeia elementos da visão (botões, campos de texto, etc) para elementos do controle (atributos da classe java)
  • classe java passa a controlar a tela, podendo recuperar dados que o usuário digitou nos campos, executar métodos quando ele clicar em um botão, e colocar novos textos nos campos da tela como forma de retorno
  • é necessário dar um ID único para cada elemento da tela

Ligação Visão e Controle

Mapeamento

Ligação Visão e Controle

Controlando elementos da visão a partir do controle

Ligação Visão e Controle

Primeiro passo: dar um identificador único (sem repetição na tela) com @+id/NOME para cada elemento que se deseja controlar

Ligação Visão e Controle

Primeiro passo: dar um identificador único (sem repetição na tela) com @+id/NOME para cada elemento que se deseja controlar

Ligação Visão e Controle

Segundo passo: criar um ViewHolder para esses elementos na clase de controle MainActivity, e fazer a ligação com os elementos de visão no método onCreate

Acionar um botão

acrescentar um evento de clique no botão (activity_main.xml), e dizer qual método da classe de controle será executado, neste caso o Calcular

Acionar um botão

acrescentar método Calcular na classe MainActivity que troca o texto do campo imc

Acionar um botão

Ao clicar no botão, o método Calcular da classe java troca o texto do campo imc

Método para calcular IMC

  • parâmetros: altura e peso
  • retorno: peso/(altura*altura)

Método para classificar o IMC

IMCClassificação
Abaixo de 17Muito abaixo do peso
Entre 17 e 18,49Abaixo do peso
Entre 18,5 e 24,99Peso normal
Entre 25 e 29,99Acima do peso
Entre 30 e 34,99Obesidade I
Entre 35 e 39,99Obesidade II (severa)
Acima de 40Obesidade III (mórbida

Método para classificar o IMC

  • parâmetro: imc
  • retorno: texto de classificação

Modificar método "Calcular" do botão

  • recuperar valores de peso e altura da tela
  • calcular imc a partir desses valores
  • classificar imc calculado
  • apresentar imc e classificação nos devidos campos da tela

Modificar método "Calcular" do botão

Modificar método "Calcular" do botão